import { IBus } from "./bus";
import { ICartridge } from "./cartridge";
import { ICPU } from "./cpu";
import { IInterrupt } from "./interrupt";
import { IPPU } from "./ppu";
import { IRAM } from "./ram";

interface IEmulator {
    cpu: ICPU;
    ppu: IPPU;
    cartridge: ICartridge;
    ppuRam: IRAM;
    cpuRam: IRAM;
    cpuBus: IBus;
    ppuBus: IBus;
    backgroundPalette: IRAM;
    spritePalette: IRAM;
    dma: IDMA;
    interrupt: IInterrupt;
}

export {
    IEmulator
}